Zamknięte. To pytanie nie spełnia wytycznych dotyczących przepełnienia stosu. Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było na temat przepełnienia stosu. Zamknięte 4 lata temu. Popraw to pytanie Buduję aplikację Shiny, która przetwarza wiele plików tekstowych wybranych przez użytkownika. Rezultatem jest ogromna ramka danych z milionami wierszy i dziesiątkami kolumn. Jestem teraz zainteresowany, aby umożliwić użytkownikowi interaktywne filtrowanie wierszy, wybieranie kolumn i podsumowywanie kolumn (poprzez wybór z listy funkcji, takich jak średnia, sd, max, min, suma itp.). Rezultatem byłaby mniejsza ramka danych podsumowująca dane wybrane przez użytkownika - w zasadzie muszę utworzyć GUI, który implementuje podstawową funkcjonalność biblioteki dplyr. Ogólnie rzecz biorąc, wiem, jak to zrobić, ręcznie tworząc kilka elementów GUI i przesyłając je do funkcji serwera za pomocą szeregu poleceń dplyr. Ponieważ wydaje się, że jest to całkiem standardowa funkcjonalność (GUI, który filtruje i podsumowuje ramkę danych), zanim zacznę budować ją od zera, zastanawiam się, czy jest coś „z półki”, z której mogę skorzystać jako W JAKIM JEST lub jako punkt wyjścia .
2021-02-22 08:14:34
Wiem, że powiedziałeś, że rpivotTable nie jest tym, czego szukasz, ale myślę, że można go skonfigurować do wykonywania niektórych ciężkich czynności, Oto przykład (użycie rpivotTable do manipulacji, DT do pokazania data.frame, rvest do przeanalizowania innerHTML z DOM, może istnieć lepszy format danych do przekazania obiektu tabeli po stronie klienta, ale jest to dowód ): ui.R biblioteka (błyszcząca) biblioteka (DT) biblioteka (rpivotTable) FullPage <- fluidPage ( DT :: dataTableOutput ('aSummaryTable'), rpivotTableOutput („WYNIKI”) ) Pełna strona server.R: biblioteka (błyszcząca) biblioteka (rpivotTable) biblioteka (DT) biblioteka (rvest) function (wejście, wyjście, sesja) { # Zrób kilka przykładowych danych qbdata <- reactive ({ expand.grid (LITERY, 1: 3) }) # Wyczyść kod HTML i zapisz jako reaktywny summarydf <- eventReactive (input $ myData, { wprowadź $ myData%>% read_html%>% html_table (fill = TRUE)%>% # Okazuje się, że w rpivotTable są dwie tabele, chcemy drugiej . [[2]] }) # pokaż df jako DT :: datatable wyjście $ aSummaryTable <- DT :: renderDataTable ({ datatable (summarydf (), rownames = FALSE) }) # Za każdym razem, gdy konfiguracja jest odświeżana, oddzwoń z zawartością tabeli wyjście $ RESULTS <- renderRpivotTable ({ rpivotTable ( qbdata (), onRefresh = htmlwidgets :: JS ("function (config) { Shiny.onInputChange ('myData', document.getElementById ('RESULTS'). InnerHTML); } ”) ) }) } | Nie szukasz odpowiedzi? Przeglądaj inne pytania otagowane r dplyr błyszczące lub zadaj własne pytanie.